package org.skill.frame;

import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.MouseMotionListener;

import javax.swing.BorderFactory;
import javax.swing.JInternalFrame;
import javax.swing.plaf.basic.BasicInternalFrameUI;

import org.come.until.FormsManagement;
import org.come.until.Music;
import org.skill.panel.SkillMainPanel;

import com.tool.tcpimg.UIUtils;

public class SkillMainFrame extends JInternalFrame implements MouseListener {
	private int first_x, first_y;// x、y坐标
	private SkillMainPanel skillMainPanel;

	/** 实例化界面 */
	public static SkillMainFrame getSkillMainFrame() {
		return (SkillMainFrame) FormsManagement.getInternalForm(82).getFrame();
	}

	public SkillMainFrame() {
		super();
		skillMainPanel = new SkillMainPanel();
		this.add(skillMainPanel);
		this.setBorder(BorderFactory.createEmptyBorder());// 去除内部窗体的边框
		((BasicInternalFrameUI) this.getUI()).setNorthPane(null);// 去除顶部的边框
		this.setBounds(100, 100, 576, 447);
		this.setBackground(UIUtils.Color_BACK);
		this.setOpaque(false);
		this.setVisible(false);
		this.pack();
		this.addMouseMotionListener(new MouseMotionListener() {// 判断窗口移动的位置
			@Override
			public void mouseMoved(MouseEvent e) {

			}

			@Override
			public void mouseDragged(MouseEvent e) {
				if (isVisible()) {
					int x = e.getX() - first_x;
					int y = e.getY() - first_y;
					setBounds(x + getX(), y + getY(), getWidth(), getHeight());
				}
			}
		});
		this.addMouseListener(this);
	}

	@Override
	public void mouseClicked(MouseEvent e) {

	}

	@Override
	public void mousePressed(MouseEvent e) {
		// 开启窗口音效
		Music.addyinxiao("关闭窗口.mp3");
		if (e.isMetaDown()) {// 检测鼠标右键单击
			FormsManagement.HideForm(82);
		} else {
			FormsManagement.Switchinglevel(82);
		}
		this.first_x = e.getX();
		this.first_y = e.getY();
	}

	@Override
	public void mouseReleased(MouseEvent e) {
		// TODO Auto-generated method stub

	}

	@Override
	public void mouseEntered(MouseEvent e) {
		// TODO Auto-generated method stub

	}

	@Override
	public void mouseExited(MouseEvent e) {
		// TODO Auto-generated method stub

	}

	public SkillMainPanel getSkillMainPanel() {
		return skillMainPanel;
	}

	public void setSkillMainPanel(SkillMainPanel skillMainPanel) {
		this.skillMainPanel = skillMainPanel;
	}
}
